<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        ;(function(){
            function foo(){
                // null 没有改变this指向
                bar.apply(null, arguments); // 相当于bar(arguments)
                
                // bar() =>
                // bar.apply() => 
                // bar.apply(arguments) =>
                // bar(arguments)
            }

            function bar(){
                console.log(arguments);
            }

            foo(1, 2, 3, 4, 5);

            console.log('-------分割线-------');
            // typeof可能返回的值有哪些(6种)
            // object(null)/boolean/number/string/undefined/function
            
            // function b(x, y, a){
            //     arguments[2] = 10;
            //     console.log(a); // 10

            //     // a = 10;
            //     // console.log(arguments[2]); // 10
            // }
            // b(1, 2, 3);

            console.log('-------分割线-------');

            // var f = (
            //     function f(){
            //         return '1';
            //     },
            //     function g(){
            //         return 2;
            //     }
            // )
            // console.log(typeof f); // 考点：,运算
            
            // var g = (
            //     function f(){
            //         return '1';
            //     },
            //     function g(){
            //         return 2;
            //     }
            // )();
            // console.log(typeof(g)); // 考点：,运算 + ()表达式立即执行
        })()

        console.log('-------分割线-------');
        ;(function(){
            // console.log(undefined == null);
            // console.log(undefined === null);
            // console.log(isNaN('100'));
            // console.log(parseInt('1a') == 1);
        })()

        console.log('-------分割线-------');
        
    </script>
</body>
</html>